<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 vector-feature-night-mode-enabled skin-theme-clientpref-os vector-sticky-header-enabled" lang="fr" dir="ltr"><head>
<meta charset="UTF-8">
<title>JavaFX</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="./_res_/favicon.png">
<link rel="canonical" href="https://fr.wikipedia.org/wiki/JavaFX"> <link href="./_mw_/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.pygments.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
<link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
<link rel="stylesheet" type="text/css" href="./_res_/footer.css">
<link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-JavaFX rootpage-JavaFX skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">JavaFX</span></h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="contentSub">
<div id="mw-content-subtitle"></div>
</div>
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="fr" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="fr" dir="ltr"><table align="right" border="0" cellspacing="0" cellpadding="0" style="clear:right;float:right;">
<tbody><tr>
<td>
<div class="infobox_v3 infobox infobox--frwiki noarchive" style="width:260px">
<div class="entete icon informatique" style="background-color: #53829e; color: #000000;"><style data-mw-deduplicate="TemplateStyles:r228712691">
/* start https://fr.wikipedia.org/ */
.mw-parser-output .entete.informatique{background-image:url("./_mw_/Picto.nfo.png")}
/* end https://fr.wikipedia.org/ */
</style>
<div><span style="color: #fff;">JavaFX</span></div>
</div>
<div class="images">
</div>
<div class="hr" style="background-color:#53829e; height:2px;"></div>
<div class="images">
</div>
<div class="legend">Capture d'écran qui montre la fenêtre d'un programme fictif créé avec JavaFX</div>
<table><caption style="background-color:#53829e;color:#000000;">Informations</caption>
<tbody><tr>
<th scope="row">Créateur</th>
<td>
<a href="Sun_Microsystems" title="Sun Microsystems">Sun Microsystems</a></td>
</tr>
<tr>
<th scope="row"><a href="D%C3%A9veloppeur" title="Développeur">Développé par</a></th>
<td>
<a href="Oracle_(entreprise)" title="Oracle (entreprise)">Oracle</a> et la communauté OpenJFX</td>
</tr>
<tr>
<th scope="row"> <a href="Version_d'un_logiciel" title="Version d'un logiciel">Première version</a>
</th>
<td>
<time class="nowrap" datetime="2008-12-04" data-sort-value="2008-12-04">4 décembre 2008</time></td>
</tr>
<tr>
<th scope="row"> <a href="Version_d'un_logiciel" title="Version d'un logiciel">Dernière version</a>
</th>
<td>
21.0.2 (<time class="nowrap" datetime="2023-09" data-sort-value="2023-09">septembre 2023</time>)</td>
</tr>
<tr>
<th scope="row"> <a href="Version_d'un_logiciel" title="Version d'un logiciel">Version avancée</a>
</th>
<td>
22 (<time class="nowrap" datetime="2024-03" data-sort-value="2024-03">mars 2024</time>)</td>
</tr>
<tr>
<th scope="row"><a href="D%C3%A9p%C3%B4t_(informatique)" title="Dépôt (informatique)">Dépôt</a></th>
<td>
<a rel="nofollow" class="external text" href="https://github.com/openjdk/jfx">JavaFX</a> sur <a href="GitHub" title="GitHub">GitHub</a></td>
</tr>
<tr>
<th scope="row"> État du projet
</th>
<td>
<span typeof="mw:File"><span></span></span> Actif</td>
</tr>
<tr>
<th scope="row"> <a href="Langage_de_programmation" title="Langage de programmation">Écrit en</a>
</th>
<td>
<a href="Java_(langage)" title="Java (langage)">Java</a>, <a href="C%2B%2B" title="C++">C++</a>, <a href="C_(langage)" title="C (langage)">C</a></td>
</tr>
<tr>
<th scope="row"><a href="Plateforme_informatique" title="Plateforme informatique">Environnement</a></th>
<td>
<a href="Multi-plateforme" class="mw-redirect" title="Multi-plateforme">Multi-plateforme</a></td>
</tr>
<tr>
<th scope="row"><a href="Internationalisation_(informatique)" title="Internationalisation (informatique)">Langues</a></th>
<td>
<a href="Anglais" title="Anglais">Anglais</a></td>
</tr>
<tr>
<th scope="row"> Type
</th>
<td>
<a href="Biblioth%C3%A8que_logicielle" title="Bibliothèque logicielle">Bibliothèque logicielle</a></td>
</tr>
<tr>
<th scope="row"> <a href="Politique_de_distribution" title="Politique de distribution">Politique de distribution</a>
</th>
<td>
Gratuit</td>
</tr>
<tr>
<th scope="row"><a href="Licence_de_logiciel" title="Licence de logiciel">Licence</a></th>
<td>
<a href="Licence_publique_g%C3%A9n%C3%A9rale_GNU" title="Licence publique générale GNU">GPL</a></td>
</tr>
<tr>
<th scope="row"><a href="Site_web" title="Site web">Site web</a></th>
<td>
<a rel="nofollow" class="external free" href="https://openjfx.io/">https://openjfx.io/</a></td>
</tr>
</tbody></table>
<p class="bloc" style="background-color:#53829e; color:#000000;">Chronologie des versions</p>
<p class="overflow infobox-navigateur navigation-not-searchable" style=""><span class="prev_bloc"><a href="Swing_(Java)" title="Swing (Java)">Swing (Java)</a></span></p>
</div>
</td></tr>
<tr>
<td>
<style data-mw-deduplicate="TemplateStyles:r223479407">
/* start https://fr.wikipedia.org/ */
.mw-parser-output .encadre{float:right;width:14em;min-width:min-content;padding:.5em .9em 0 .9em;margin-left:0.5em;margin-bottom:0.5em;border:solid 1px #99B3FF;background-color:var(--background-color-base,#fff)}.mw-parser-output .encadre-entete{display:flex;align-items:center;justify-content:center;gap:1em}.mw-parser-output .encadre-titre{font-weight:bold}.mw-parser-output .encadre-reference{text-align:center;font-size:.8em}@media screen{html.skin-theme-clientpref-night .mw-parser-output .encadre{border-color:#164e76}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .encadre{border-color:#164e76}}
/* end https://fr.wikipedia.org/ */
</style>
<div class="encadre notheme" style="background-color:#e4e4e440;">
<div class="encadre-entete">
<div class="encadre-titre"></div></div>
<div class="encadre-contenu">
<div class="mw-heading mw-heading3"><h3 id="Plateforme_Java"><div class="center"><a href="Plateforme_Java" title="Plateforme Java">Plateforme Java</a></div></h3></div>
<ul><li><a href="Java_SE" title="Java SE">Java SE</a></li>
<li><a href="Jakarta_EE" title="Jakarta EE">Jakarta EE</a></li>
<li><a href="Java_ME" title="Java ME">Java ME</a></li>
<li><b>JavaFX</b></li>
<li><a href="Java_Card" title="Java Card">Java Card</a></li></ul>
</div>
</div>
</td></tr></tbody></table>
<p><b>JavaFX</b> est un <a href="Framework" title="Framework">framework</a> et une <a href="Biblioth%C3%A8que_graphique" title="Bibliothèque graphique">bibliothèque d'interface utilisateur</a> issue du projet <a href="OpenJFX" class="mw-redirect" title="OpenJFX">OpenJFX</a>, qui permet aux développeurs <a href="Java_(langage)" title="Java (langage)">Java</a> de créer une <a href="Interface_graphique" title="Interface graphique">interface graphique</a> pour des applications de bureau, des <a href="Rich_desktop_application" title="Rich desktop application">applications internet riches</a> et des applications <a href="Smartphone" title="Smartphone">smartphones</a> et tablettes tactiles.
</p><p>Créé à l'origine par <a href="Sun_Microsystems" title="Sun Microsystems">Sun MicroSystems</a>, puis développé par <a href="Oracle_(entreprise)" title="Oracle (entreprise)">Oracle</a> après son rachat et ce, jusqu'à la version 11 du <a href="Java_Development_Kit" title="Java Development Kit">JDK</a>, c'est depuis lors à la communauté OpenJFX que revient la poursuite de son développement<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup>.
</p><p>Cette bibliothèque a été conçue pour remplacer <a href="Swing_(Java)" title="Swing (Java)">Swing</a> et <a href="Abstract_Window_Toolkit" title="Abstract Window Toolkit">AWT</a>, qui ont été développés à partir de la fin des années 90, pour pallier les défauts de ces derniers et fournir de nouvelles fonctionnalités (dont le support des écrans tactiles).
</p><p>Le cycle de sortie d'une nouvelle version de JavaFX correspond à celui de Java, soit tous les 6 mois.
</p>
<div class="mw-heading mw-heading2"><h2 id="Historique">Historique</h2></div>
<p>À ses débuts, les développeurs devaient utiliser le langage de script <a href="JavaFX_Script" title="JavaFX Script">JavaFX Script</a> pour pouvoir décrire une interface utilisateur et la bibliothèque ne permettait de concevoir que des applications internet riches.
</p><p>Depuis la version 2.0, il s'agit d'une véritable <a href="Interface_de_programmation" title="Interface de programmation">API</a> qui est proposé sous la forme d'une bibliothèque tierce et qui plus est, devient <a href="Open_source" title="Open source">open source</a><sup id="cite_ref-:0_2-0" class="reference"><a href="#cite_note-:0-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup>.
</p><p>Avec l'apparition de la version 8 de Java (en <time class="nowrap" datetime="2014-03" data-sort-value="2014-03">mars 2014</time>), JavaFX devient la bibliothèque de création d'interface graphique officielle du langage Java, le développement de son prédécesseur Swing (avec AWT) étant abandonné, excepté pour les corrections de bogues.
</p><p>Depuis la version 11 de Java, le projet est dissocié du JDK, pour suivre son propre processus de développement. Toutefois, le numéro de version de JavaFX concorde avec celui du JDK pour indiquer sa compatibilité (car toute application JavaFX est basée sur le JDK).
</p>
<div class="mw-heading mw-heading2"><h2 id="Composants">Composants</h2></div>
<p>JavaFX est composé des 7 modules suivants:
</p>
<ul><li><b>javafx.base</b>: Définit l'API de base</li>
<li><b>javafx.controls</b>: Définit la majorité des composants graphiques de l'API</li>
<li><b>javafx.fxml</b>: Définit l'API relative au langage <a href="FXML" title="FXML">FXML</a> qui permet de décrire une interface utilisateur d'une manière alternative à l'écriture de lignes de code</li>
<li><b>javafx.graphics</b>: Définit l'API relative aux conteneurs, animations, effets visuels, formes 2D et 3D, images, impression, fenêtres, événements, robots, au support du CSS et à l'application</li>
<li><b>javafx.media</b>: Définit l'API dédié à la lecture de contenu audio et vidéo</li>
<li><b>javafx.swing</b>: Définit l'API qui fournit le support d’<a href="Interop%C3%A9rabilit%C3%A9" title="Interopérabilité">interopérabilité</a> entre JavaFX et <a href="Swing_(Java)" title="Swing (Java)">Swing</a></li>
<li><b>javafx.web</b>: Définit l'API dédié à l'affichage de contenu web (notamment un <a href="%C3%89diteur_HTML" title="Éditeur HTML">éditeur HTML</a> et un moteur de rendu de pages web basé sur <a href="WebKit" title="WebKit">WebKit</a>)</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Versions">Versions</h2></div>
<table class="wikitable">
<caption>Liste des versions de JavaFX<sup id="cite_ref-:0_2-1" class="reference"><a href="#cite_note-:0-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup><sup class="reference cite_virgule">,</sup><sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup><sup class="reference cite_virgule">,</sup><sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup>
</caption>
<tbody><tr>
<th>Numéro de version
</th>
<th>Date de sortie
</th>
<th>Note
</th></tr>
<tr>
<td>1.0
</td>
<td><time class="nowrap" datetime="2008-12-04" data-sort-value="2008-12-04">4 décembre 2008</time>
</td>
<td>JavaFX Script ; le code source est fermé
</td></tr>
<tr>
<td>1.1
</td>
<td><time class="nowrap" datetime="2009-02-12" data-sort-value="2009-02-12">12 février 2009</time>
</td>
<td>
</td></tr>
<tr>
<td>1.2
</td>
<td><time class="nowrap" datetime="2009-06-02" data-sort-value="2009-06-02">2 juin 2009</time>
</td>
<td>
</td></tr>
<tr>
<td>1.3
</td>
<td><time class="nowrap" datetime="2010-04-22" data-sort-value="2010-04-22">22 avril 2010</time>
</td>
<td>Intégration des diagrammes ; support du CSS
</td></tr>
<tr>
<td>1.3.1
</td>
<td><time class="nowrap" datetime="2010-08-21" data-sort-value="2010-08-21">21 août 2010</time>
</td>
<td>
</td></tr>
<tr>
<td>2.0
</td>
<td><time class="nowrap" datetime="2011-10-10" data-sort-value="2011-10-10">10 octobre 2011</time>
</td>
<td>Il s'agit désormais d'une API et non d'un langage de script ; FXML
</td></tr>
<tr>
<td>2.1
</td>
<td><time class="nowrap" datetime="2012-04-27" data-sort-value="2012-04-27">27 avril 2012</time>
</td>
<td>Support de MacOS
</td></tr>
<tr>
<td>2.2
</td>
<td><time class="nowrap" datetime="2012-08-14" data-sort-value="2012-08-14">14 août 2012</time>
</td>
<td>Support de Linux ; nouveaux composants graphiques
</td></tr>
<tr>
<td>8.0
</td>
<td><time class="nowrap" datetime="2014-03-18" data-sort-value="2014-03-18">18 mars 2014</time>
</td>
<td>Intégration de JavaFX au JDK 8
</td></tr>
<tr>
<td>9.0
</td>
<td><time class="nowrap" datetime="2017-09-21" data-sort-value="2017-09-21">21 septembre 2017</time>
</td>
<td>Modularisation de JavaFX
</td></tr>
<tr>
<td>10.0
</td>
<td><time class="nowrap" datetime="2018-03-20" data-sort-value="2018-03-20">20 mars 2018</time>
</td>
<td>
</td></tr>
<tr>
<td>11.0
</td>
<td><time class="nowrap" datetime="2018-09-18" data-sort-value="2018-09-18">18 septembre 2018</time>
</td>
<td>Devient un module à part entière du JDK
</td></tr>
<tr>
<td>12.0
</td>
<td><time class="nowrap" datetime="2019-03-11" data-sort-value="2019-03-11">11 mars 2019</time>
</td>
<td>
</td></tr>
<tr>
<td>13.0
</td>
<td><time class="nowrap" datetime="2019-09-10" data-sort-value="2019-09-10">10 septembre 2019</time>
</td>
<td>
</td></tr>
<tr>
<td>14.0
</td>
<td>13 mars 2020
</td>
<td>
</td></tr>
<tr>
<td>15.0
</td>
<td>septembre 2020
</td>
<td>
</td></tr>
<tr>
<td>16.0
</td>
<td>mars 2021
</td>
<td>
</td></tr>
<tr>
<td>17.0
</td>
<td>septembre 2021
</td>
<td>Soutien à long terme jusqu'en septembre 2026
</td></tr>
<tr>
<td>18.0
</td>
<td>mars 2022
</td>
<td>
</td></tr>
<tr>
<td>19.0
</td>
<td>septembre 2022
</td>
<td>
</td></tr>
<tr>
<td>20.0
</td>
<td>mars 2023
</td>
<td>
</td></tr>
<tr>
<td>21.0
</td>
<td>septembre 2023
</td>
<td>Soutien à long terme
</td></tr></tbody></table>
<div class="mw-heading mw-heading2"><h2 id="Exemple">Exemple</h2></div><p>
Ci-dessous, un exemple de programme affichant le message "<a href="Hello_world" title="Hello world">Hello World</a>":</p><div class="mw-highlight mw-highlight-lang-java mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="kn">import</span><span class="w"> </span><span class="nn">javafx.application.Application</span><span class="p">;</span>
<span class="linenos" data-line="2"></span><span class="kn">import</span><span class="w"> </span><span class="nn">javafx.scene.control.Label</span><span class="p">;</span>
<span class="linenos" data-line="3"></span><span class="kn">import</span><span class="w"> </span><span class="nn">javafx.stage.Stage</span><span class="p">;</span>
<span class="linenos" data-line="4"></span><span class="kn">import</span><span class="w"> </span><span class="nn">javafx.application.Platform</span><span class="p">;</span>
<span class="linenos" data-line="5"></span><span class="kn">import</span><span class="w"> </span><span class="nn">javafx.scene.Scene</span><span class="p">;</span>
<span class="linenos" data-line="6"></span>
<span class="linenos" data-line="7"></span><span class="kd">public</span><span class="w"> </span><span class="kd">class</span> <span class="nc">Main</span><span class="w"> </span><span class="kd">extends</span><span class="w"> </span><span class="n">Application</span><span class="w"> </span><span class="p">{</span>
<span class="linenos" data-line="8"></span><span class="w"> </span>
<span class="linenos" data-line="9"></span><span class="w"> </span><span class="c1">// Point d'entrée du programme</span>
<span class="linenos" data-line="10"></span><span class="w"> </span><span class="kd">public</span><span class="w"> </span><span class="kd">static</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="nf">main</span><span class="p">(</span><span class="n">String</span><span class="o">[]</span><span class="w"> </span><span class="n">args</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
<span class="linenos" data-line="11"></span><span class="w"> </span><span class="n">launch</span><span class="p">(</span><span class="n">args</span><span class="p">);</span><span class="w"> </span><span class="c1">// Appel du point d'entrée de l'application JavaFx (voir ci-dessous)</span>
<span class="linenos" data-line="12"></span><span class="w"> </span><span class="p">}</span>
<span class="linenos" data-line="13"></span><span class="w"> </span>
<span class="linenos" data-line="14"></span><span class="w"> </span><span class="c1">// Point d'entrée de l'application JavaFX</span>
<span class="linenos" data-line="15"></span><span class="w"> </span><span class="nd">@Override</span>
<span class="linenos" data-line="16"></span><span class="w"> </span><span class="kd">public</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="nf">start</span><span class="p">(</span><span class="n">Stage</span><span class="w"> </span><span class="n">primaryStage</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
<span class="linenos" data-line="17"></span>
<span class="linenos" data-line="18"></span><span class="w"> </span><span class="c1">// Définition du titre de la fenêtre de l'application</span>
<span class="linenos" data-line="19"></span><span class="w"> </span><span class="n">primaryStage</span><span class="p">.</span><span class="na">setTitle</span><span class="p">(</span><span class="s">"Titre de la fenêtre"</span><span class="p">);</span>
<span class="linenos" data-line="20"></span><span class="w"> </span>
<span class="linenos" data-line="21"></span><span class="w"> </span><span class="c1">// Appel d'une méthode permettant une fermeture propre de l'application</span>
<span class="linenos" data-line="22"></span><span class="w"> </span><span class="n">primaryStage</span><span class="p">.</span><span class="na">setOnCloseRequest</span><span class="p">(</span><span class="n">e</span><span class="w"> </span><span class="o">-></span><span class="w"> </span><span class="n">Platform</span><span class="p">.</span><span class="na">exit</span><span class="p">());</span>
<span class="linenos" data-line="23"></span><span class="w"> </span>
<span class="linenos" data-line="24"></span><span class="w"> </span><span class="c1">// Création de la scène (avec des dimensions correspondant à une résolution HD), composé uniquement d'une étiquette affichant du texte</span>
<span class="linenos" data-line="25"></span><span class="w"> </span><span class="n">primaryStage</span><span class="p">.</span><span class="na">setScene</span><span class="p">(</span><span class="k">new</span><span class="w"> </span><span class="n">Scene</span><span class="p">(</span><span class="k">new</span><span class="w"> </span><span class="n">Label</span><span class="p">(</span><span class="s">"Hello world !"</span><span class="p">),</span><span class="w"> </span><span class="mi">1280</span><span class="p">,</span><span class="w"> </span><span class="mi">720</span><span class="p">));</span>
<span class="linenos" data-line="26"></span><span class="w"> </span>
<span class="linenos" data-line="27"></span><span class="w"> </span><span class="c1">// Affichage de la fenêtre</span>
<span class="linenos" data-line="28"></span><span class="w"> </span><span class="n">primaryStage</span><span class="p">.</span><span class="na">show</span><span class="p">();</span>
<span class="linenos" data-line="29"></span><span class="w"> </span><span class="p">}</span>
<span class="linenos" data-line="30"></span><span class="p">}</span>
</pre></div>
<div class="mw-heading mw-heading2"><h2 id="Bibliothèques"><span id="Biblioth.C3.A8ques"></span>Bibliothèques</h2></div>
<p>Des projets de bibliothèques viennent compléter les fonctionnalités de JavaFX. Parmi eux, on peut citer les projets suivants:
</p>
<ul><li><a rel="nofollow" class="external text" href="https://github.com/controlsfx/controlsfx">ControlsFX</a>: ensemble de composants graphiques</li>
<li><a rel="nofollow" class="external text" href="http://jfxtras.org/">JFXtras</a>: ensemble de composants graphiques</li>
<li><a rel="nofollow" class="external text" href="https://www.jfoenix.com/">JFoenix</a>: fournit une interface dans le style <a href="Material_design" class="mw-redirect" title="Material design">Material design</a></li>
<li><a rel="nofollow" class="external text" href="https://github.com/dlemmermann/CalendarFX">CalendarFX</a>: permet de créer des calendriers</li>
<li><a rel="nofollow" class="external text" href="https://github.com/dlemmermann/formsfx">FormsFX</a>: permet de faciliter la création de formulaires</li>
<li><a rel="nofollow" class="external text" href="https://github.com/HanSolo/tilesfx">TilesFX</a>: ensemble de widgets pour le développement d'un tableau de bord</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Scene_Builder:_l'outil_de_conception_d'interfaces"><span id="Scene_Builder:_l.27outil_de_conception_d.27interfaces"></span>Scene Builder: l'outil de conception d'interfaces</h2></div>
<p><b>Scene Builder</b> est un <a href="Constructeur_d'interface_graphique" title="Constructeur d'interface graphique">outil interactif de conception d'interface graphique</a> pour JavaFX. Il permet de créer des interfaces utilisateurs rapidement et sans avoir besoin de <a href="Programmation_informatique" title="Programmation informatique">coder</a>: il en résulte des fichiers au format <a href="FXML" title="FXML">FXML</a> qui sont ensuite chargés par le programme pour afficher une interface graphique à ses utilisateurs.
</p><p>Développé initialement par Oracle et sous le nom JavaFX Scene Builder<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup>, son code source a été publié en <a href="Open_source" title="Open source">open source</a> à partir de sa version 2.0<sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup>.
</p><p>Depuis, le logiciel est principalement développé et soutenu par la société Gluon<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup>.
</p>
<div class="mw-heading mw-heading2"><h2 id="Annexes">Annexes</h2></div>
<style data-mw-deduplicate="TemplateStyles:r194021218">
/* start https://fr.wikipedia.org/ */
.mw-parser-output .autres-projets>.titre{text-align:center;margin:0.2em 0}.mw-parser-output .autres-projets>ul{margin:0;padding:0}.mw-parser-output .autres-projets>ul>li{list-style:none;margin:0.2em 0;text-indent:0;padding-left:24px;min-height:20px;text-align:left;display:block}.mw-parser-output .autres-projets>ul>li>a{font-style:italic}@media(max-width:720px){.mw-parser-output .autres-projets{float:none}}
/* end https://fr.wikipedia.org/ */
</style>
<div class="mw-heading mw-heading3"><h3 id="Articles_connexes">Articles connexes</h3></div>
<ul><li><a href="Java_(langage)" title="Java (langage)">Java (langage)</a></li>
<li><a href="Plate-forme_Java" class="mw-redirect" title="Plate-forme Java">Plate-forme Java</a></li>
<li><a href="Machine_virtuelle_Java" title="Machine virtuelle Java">Machine virtuelle Java</a></li>
<li><a href="Swing_(Java)" title="Swing (Java)">Swing</a></li>
<li><a href="Liste_de_biblioth%C3%A8ques_d'interface_utilisateur" title="Liste de bibliothèques d'interface utilisateur">Liste de bibliothèques d'interface utilisateur</a></li>
<li><a href="Scene_Builder" title="Scene Builder">Scene Builder</a></li></ul>
<div class="mw-heading mw-heading3"><h3 id="Liens_externes">Liens externes</h3></div>
<ul><li><abbr class="abbr indicateur-langue" title="Langue : anglais">(en)</abbr> <a rel="nofollow" class="external text" href="https://wiki.openjdk.java.net/display/OpenJFX/Main">Wiki du projet OpenJFX</a></li>
<li><abbr class="abbr indicateur-langue" title="Langue : anglais">(en)</abbr> <a rel="nofollow" class="external text" href="https://gluonhq.com/products/scene-builder/">Page de téléchargement de SceneBuilder</a></li>
<li><abbr class="abbr indicateur-langue" title="Langue : anglais">(en)</abbr> <a rel="nofollow" class="external text" href="https://gluonhq.com/products/scene-builder/">Site internet de Scene Builder</a></li></ul>
<div class="mw-heading mw-heading3"><h3 id="Références"><span id="R.C3.A9f.C3.A9rences"></span>Références</h3></div>
<div class="references-small decimal" style=""><div class="mw-references-wrap"><ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><a href="#cite_ref-1">↑</a> </span><span class="reference-text"><span class="ouvrage" id="2018">« <a rel="nofollow" class="external text" href="https://jaxenter.com/jdk-11-javafx-separate-module-142186.html"><cite style="font-style:normal;">JDK 11 update: JavaFX will be decoupled from the JDK</cite></a> », sur <span class="italique">jaxenter.com</span>, <i>JAXenter</i>, <time class="nowrap" datetime="2018-03-08" data-sort-value="2018-03-08">8 mars 2018</time> <small style="line-height:1em;">(consulté le <time class="nowrap" datetime="2019-03-19" data-sort-value="2019-03-19">19 mars 2019</time>)</small></span></span>
</li>
<li id="cite_note-:0-2"><span class="reference-text"><span class="ouvrage" id="2017"><abbr class="abbr indicateur-langue" title="Langue : anglais">(en)</abbr> « <a rel="nofollow" class="external text" href="https://wiki.openjdk.java.net/display/OpenJFX/Repositories+and+Releases"><cite style="font-style:normal;" lang="en">Repositories and Releases</cite></a> », sur <span class="italique">OpenJDK Wiki</span>, <time class="nowrap" datetime="2017-12-22" data-sort-value="2017-12-22">22 décembre 2017</time> <small style="line-height:1em;">(consulté le <time class="nowrap" datetime="2019-03-19" data-sort-value="2019-03-19">19 mars 2019</time>)</small></span></span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><a href="#cite_ref-3">↑</a> </span><span class="reference-text"><span class="ouvrage" id="2017"><abbr class="abbr indicateur-langue" title="Langue : anglais">(en)</abbr> « <a rel="nofollow" class="external text" href="https://www.thoughtco.com/what-is-javafx-2034192"><cite style="font-style:normal;" lang="en">What is JavaFX ?</cite></a> », sur <span class="italique">thoughtco.com</span>, <i>ThoughtCo.</i>, <time class="nowrap" datetime="2017-03-17" data-sort-value="2017-03-17">17 mars 2017</time> <small style="line-height:1em;">(consulté le <time class="nowrap" datetime="2019-03-19" data-sort-value="2019-03-19">19 mars 2019</time>)</small></span></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><a href="#cite_ref-4">↑</a> </span><span class="reference-text"><span class="ouvrage" id="2014"><abbr class="abbr indicateur-langue" title="Langue : anglais">(en)</abbr> « <a rel="nofollow" class="external text" href="http://slideplayer.com/slide/4207333/"><cite style="font-style:normal;" lang="en">JavaFX 8: New and Noteworthy</cite></a> », sur <span class="italique">SlidePlayer</span>, <time class="nowrap" datetime="2014-09" data-sort-value="2014-09">septembre 2014</time> <small style="line-height:1em;">(consulté le <time class="nowrap" datetime="2019-03-25" data-sort-value="2019-03-25">25 mars 2019</time>)</small></span></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><a href="#cite_ref-5">↑</a> </span><span class="reference-text"><span class="ouvrage"><abbr class="abbr indicateur-langue" title="Langue : anglais">(en)</abbr> « <a rel="nofollow" class="external text" href="https://www.oracle.com/technetwork/java/javase/downloads/javafxscenebuilder-info-2157684.html"><cite style="font-style:normal;" lang="en">JavaFX Scene Builder Information</cite></a> », sur <span class="italique">oracle.com</span> <small style="line-height:1em;">(consulté le <time class="nowrap" datetime="2019-03-25" data-sort-value="2019-03-25">25 mars 2019</time>)</small></span></span>
</li>
<li id="cite_note-6"><span class="mw-cite-backlink"><a href="#cite_ref-6">↑</a> </span><span class="reference-text"><span class="ouvrage" id="2013">« <a rel="nofollow" class="external text" href="https://www.developpez.com/actu/65182/JavaFX-Scene-Builder-devient-open-source-dans-le-cadre-du-projet-OpenJFX/"><cite style="font-style:normal;">JavaFX Scene Builder devient open source, dans le cadre du projet OpenJFX</cite></a> », sur <span class="italique">developpez.com</span>, <time class="nowrap" datetime="2013-12-05" data-sort-value="2013-12-05">5 décembre 2013</time> <small style="line-height:1em;">(consulté le <time class="nowrap" datetime="2019-03-25" data-sort-value="2019-03-25">25 mars 2019</time>)</small></span></span>
</li>
<li id="cite_note-7"><span class="mw-cite-backlink"><a href="#cite_ref-7">↑</a> </span><span class="reference-text"><span class="ouvrage"><abbr class="abbr indicateur-langue" title="Langue : anglais">(en)</abbr> « <a rel="nofollow" class="external text" href="https://gluonhq.com/products/scene-builder/"><cite style="font-style:normal;" lang="en">Scene Builder</cite></a> », sur <span class="italique">gluonhq.com</span> <small style="line-height:1em;">(consulté le <time class="nowrap" datetime="2019-03-25" data-sort-value="2019-03-25">25 mars 2019</time>)</small></span></span>
</li>
</ol></div>
</div>
<div class="navbox-container" style="clear:both;">
</div>
<ul id="bandeau-portail" class="bandeau-portail"><li><span class="bandeau-portail-element"><span class="bandeau-portail-icone"><span class="noviewer" typeof="mw:File"></span></span> <span class="bandeau-portail-texte">Portail de l’informatique</span> </span></li> <li><span class="bandeau-portail-element"><span class="bandeau-portail-icone"><span class="noviewer" typeof="mw:File"></span></span> <span class="bandeau-portail-texte">Portail de la programmation informatique</span> </span></li> </ul></div><!--htdig_noindex--><div><div class="zim-footer">
Cet article est issu de <a class="external text" title="Dernière modification le 2025-10-10" href="https://fr.wikipedia.org/wiki/?title=JavaFX&oldid=229640641">Wikipédia</a>. Sauf mention contraire, le texte est disponible sous <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.fr">Creative Commons Attribution-Share Alike 4.0</a>. Des conditions supplémentaires peuvent s’appliquer aux fichiers multimédias.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
<script src="./_webp_/webpHandler.js"></script>
</body></html>